package com.dao;

import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import com.entidades.Filme;

@Stateless
public class FilmeDAO extends GenericDAO<Filme> {

	@PersistenceContext(unitName = "Projeto2POD")
	private EntityManager em;
	
	public FilmeDAO() {
		super(Filme.class);
	}

	public Filme findByTitulo(String titulo){		
		try{
			Query q = em.createQuery("select f from Filme f where f.titulo='"+titulo+"'");
			Filme f =(Filme)q.getSingleResult();
			return f;
		} catch (NoResultException e) {
			return null;
		}
	}

	public Filme findByAno(String ano){		
		try{
			Query q = em.createQuery("select f from Filme f where f.ano='"+ano+"'");
			Filme f =(Filme)q.getSingleResult();
			return f;
		} catch (NoResultException e) {
			return null;
		}
	}

	public Filme findByAutor(String autor){		
		try{
			Query q = em.createQuery("select f from Filme f where f.autor='"+autor+"'");
			Filme f =(Filme)q.getSingleResult();
			return f;
		} catch (NoResultException e) {
			return null;
		}
	}

	public Filme findByCategoria(String categoria){		
		Query q = em.createQuery("select f from Filme f where f.categoria='"+categoria+"'");
		Filme f =(Filme)q.getSingleResult();
		return f;
	}
}
